package com.ruoyi.hospital.domain;

import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.Date;

/**
 * 预约信息对象 appointments
 *
 * @author xiaozhao
 * @date 2025-07-04
 */
public class Appointments extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 预约表（UUID生成） */
    private Long appointmentId;

    /** 患者名称 */
    @Excel(name = "患者名称")
    private String patientName;

    /** 身份证号 */
    @Excel(name = "身份证号")
    private String idCard;

    @Excel(name = "医院名称")
    private String hospitalName;
    @Excel(name = "科室名称")
    private String deptName;
    @Excel(name = "医生名称")
    private String doctorName;

    /** 医院ID */
    private String hospitalId;

    /** 科室ID */
    private Long deptId;

    /** 医生ID */
    private Long doctorId;

    /** 就诊日期 */
    @Excel(name = "就诊日期")
    private Date appointmentDate;
    /** 就诊时段 */
    @Excel(name = "就诊时段")
    private String timeSlot;

    /** 取消原因 */
    private String cancelReason;

    private Schedules schedule;

    public Date getAppointmentDate() {
        return appointmentDate;
    }

    public void setAppointmentDate(Date appointmentDate) {
        this.appointmentDate = appointmentDate;
    }

    public String getDoctorName() {
        return doctorName;
    }

    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }

    public String getHospitalName() {
        return hospitalName;
    }

    public void setHospitalName(String hospitalName) {
        this.hospitalName = hospitalName;
    }

    public String getDeptName() {
        return deptName;
    }

    public void setDeptName(String deptName) {
        this.deptName = deptName;
    }

    public void setAppointmentId(Long appointmentId)
    {
        this.appointmentId = appointmentId;
    }

    public Long getAppointmentId()
    {
        return appointmentId;
    }

    public void setPatientName(String patientName)
    {
        this.patientName = patientName;
    }

    public String getPatientName()
    {
        return patientName;
    }

    public void setIdCard(String idCard)
    {
        this.idCard = idCard;
    }

    public String getIdCard()
    {
        return idCard;
    }

    public void setDoctorId(Long doctorId)
    {
        this.doctorId = doctorId;
    }

    public Long getDoctorId()
    {
        return doctorId;
    }

    public void setHospitalId(String hospitalId)
    {
        this.hospitalId = hospitalId;
    }

    public String getHospitalId()
    {
        return hospitalId;
    }

    public void setDeptId(Long deptId)
    {
        this.deptId = deptId;
    }

    public Long getDeptId()
    {
        return deptId;
    }

    public void setTimeSlot(String timeSlot)
    {
        this.timeSlot = timeSlot;
    }

    public String getTimeSlot()
    {
        return timeSlot;
    }

    public void setCancelReason(String cancelReason)
    {
        this.cancelReason = cancelReason;
    }

    public String getCancelReason()
    {
        return cancelReason;
    }

    @Override
    public String toString() {
        return "Appointments{" +
                "appointmentDate=" + appointmentDate +
                ", appointmentId=" + appointmentId +
                ", patientName='" + patientName + '\'' +
                ", idCard='" + idCard + '\'' +
                ", hospitalName='" + hospitalName + '\'' +
                ", deptName='" + deptName + '\'' +
                ", doctorName='" + doctorName + '\'' +
                ", hospitalId='" + hospitalId + '\'' +
                ", deptId=" + deptId +
                ", doctorId=" + doctorId +
                ", timeSlot='" + timeSlot + '\'' +
                ", cancelReason='" + cancelReason + '\'' +
                '}';
    }

}
